#include "action.h"

using namespace std;

Action::Action():m_id(0),m_event(),m_name(""),m_configurable(false)
{
}

Action::Action(ActionID id,Event event,string name,bool conf)
  :m_id(id),m_event(event),m_name(name),m_configurable(conf)
{
}

Action::~Action()
{
}

ActionID Action::getActionID()const
{
  return m_id;
}

Event Action::getEvent()const
{
  return m_event;
}

string Action::getName()const
{
  return m_name;
}

bool Action::isConfigurable()const
{
  return m_configurable;
}

void Action::setActionID(ActionID id)
{
  m_id=id;
}

void Action::setEvent(Event& event)
{
  m_event=event;
}

void Action::setName(string& name)
{
  m_name=name;
}

void Action::setConfigurable(bool conf)
{
  m_configurable=conf;
}

bool Action::operator==(const Action &a)
{
  return m_id==a.m_id && m_event==a.m_event && m_name==a.m_name &&
    m_configurable==a.m_configurable;
}

bool Action::operator!=(const Action &a)
{
  return m_id!=a.m_id || m_event!=a.m_event || m_name!=a.m_name ||
    m_configurable!=a.m_configurable;
}
